
Page({
  data: {
    name: '',
    admin: '',
    pwd: '',
    eyeType: true,
    passwordType: true,
  },
  //生命周期函数，用于监听页面加载
  onLoad: function (options) {
    console.log('options', options) //接收注册页带过来的信息
    console.log('options.admin', options.admin) //接收注册页带过来的账号
    if(options.admin){
      this.setData({
        admin: options.admin
      })
    }
  },
  //获取输入的值
  getName(e) {
    // console.log(e.detail.value)
    this.setData({
      name: e.detail.value
    })
  },
  getAdmin(e) {
    // console.log(e.detail.value)
    this.setData({
      admin: e.detail.value
    })
  },
  getpwd(e) {
    // console.log(e.detail.value)
    this.setData({
      pwd: e.detail.value
    })
  },
  //去注册
  register() {
    wx.navigateTo({
      url: '/pages/regist/regist',
    })
  },
  //密码是否可见
  eyeStatus() {
    this.setData({
      passwordType: !this.data.passwordType,
      eyeType: !this.data.eyeType,
    })
  },
  //提交登录
  commit() {
    //得到输入的各项值
    let admin = this.data.admin
    let pwd = this.data.pwd
    console.log(admin, pwd)
    wx.showLoading({
      title: '登录中...',
    })
    //把输入的值与云数据库得值做比对，进行登录操作
    wx.cloud.callFunction({
      name:"user",
      data:{
        action:"find",
        admin:admin,//到云数据库找与本地输入的账号相同的账号的那条信息
      }
    })
    .then(res=>{
        console.log('数据获取成功', res)
        let user = res.result.data[0] //到user数据库获取与输入账号对应的个人信息到user变量
        console.log('user', user)
        if (!user) { //账号不存在
          console.log('账号不存在')
          wx.hideLoading({
            success: (res) => {
              wx.showToast({
                icon: 'none',
                title: '账号不存在，请重新输入账号',
              })
            },
          })
        } else { //账号存在,做真正的登录功能
          if (pwd == user.pwd) { //如果本地输入的密码和数据库中对应的密码相同
            console.log('登录成功')
            wx.hideLoading({
              success: (res) => {
                wx.showToast({
                  title: '登录成功',
                })
              },
            })
            //登录成功之后：跳转到首页
            setTimeout(() => {
              wx.switchTab({
                url: '../home/home',
              })
            }, 1000);
            //登录成功之后，还要保存这个user的所有数据到当地缓存，共给各个页面获取user数据
            wx.setStorageSync('user', user)
            console.log('登录时给的user缓存信息',user)
            // //登录之后，还要把登录账号信息放入app的globalData中，等推退出的时候，还要将globalData中的数据清零。(无法给globalData赋值！！！！)
            //  app.globalData.user=user
            // console.log("登录时给globalData传的user信息",app.globalData.user)
            //登录三秒之后检测是否填写个人信息
            setTimeout(()=>{
              if(user.userType=='C'){
                wx.cloud.callFunction({
                  name:'patientInfo',
                  data:{
                    action:'findOne',
                    admin:user.admin
                  }
                }).then(res=>{
                  console.log('查找这个人的患者信息成功',res)
                  //判断这个人是否写了个人信息
                  if(!res.result.data[0]){
                    //如果没有写个人信息，要求写个人信息
                    wx.navigateTo({
                      url: '/pages/changePatient/changePatient?admin='+user.admin,
                    })
                    wx.showToast({
                      icon:'none',
                      title: '您还没有填写个人信息，为不影响使用，请完善个人信息',
                      duration:3000,
                    })
                  }
                }).catch(res=>{
                  console.log('查找这个人的患者信息失败',res)
                })
              }
            },3000)

          } else {
            console.log('登录失败,密码错误，请重新输入')
            wx.hideLoading({
              success: (res) => {
                wx.showToast({
                  icon: 'none',
                  title: '密码错误，请重新输入',
                })
              },
            })
          }
        }
    })
    .catch(res=>{
      console.log('登录失败',res)
    })
  },
})